package servlets;

import java.io.IOException;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

import bean.Usuario;

/**
 * Servlet implementation class LoginServlet
 */
@WebServlet("/login")
public class ServletLogin extends HttpServlet {
	private static final long serialVersionUID = 1L;
       
    /**
     * @see HttpServlet#HttpServlet()
     */
    public ServletLogin() {
        super();
        // TODO Auto-generated constructor stub
    }

	/**
	 * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
	 */
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
		
	}

	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
		/*Usuario usuario = new Usuario();
		usuario.setLogi(request.getParameter("username"));
		usuario.setPass(request.getParameter("password"));
		DAOFactory factory=
				DAOFactory.getFactoryConcrete(DAOFactory.MYSQL);
		Entidad<Usuario> usuarioDAO=factory.getUsuarioDAO();
		Entidad<Permiso> permisoDAO=factory.getPermisoDAO();
		List<Permiso> listPermiso= new ArrayList<Permiso>();
		Usuario usuariodb = null;
		 usuariodb = usuarioDAO.findById(usuario);*/
		
		Usuario usuario=new Usuario();
		usuario.setUser(request.getParameter("username"));
		usuario.setPass(request.getParameter("password"));
		
		Usuario usuariodb=new Usuario();
		usuariodb.setUser("daniel");
		usuariodb.setPass("12345");
		
		String pagina=null;
		Object listObject[] = new Object[2];
		/*if(usuariodb == null){
			String mensaje="Usuario no existe";
			request.setAttribute("mensaje", mensaje);
			pagina="/login.jsp";
		}else{*/
			if(usuariodb.getPass().toUpperCase().equals(usuario.getPass().toUpperCase())){
				
				/*listObject[0] = "1";
				listObject[1] = usuariodb.getId_usua();
				System.out.println("ID: "+usuariodb.getId_usua());
				listPermiso = permisoDAO.listAllCustom(listObject);
				for( Permiso p : listPermiso ){
					if(p.getModu().equals("ADMINISTRACION")){
						usuariodb.setConfi(1);
					}else if(p.getModu().equals("VENTAS")){
						System.out.println("VENTAS"+p.getModu());
						usuariodb.setVenta(1);
					}else if(p.getModu().equals("POSTVENTA")){
						usuariodb.setPost(1);
					}else if(p.getModu().equals("COMPRAS")){
						usuariodb.setCompr(1);
					}else if(p.getModu().equals("SEGURIDAD")){
						usuariodb.setSegur(1);
					}
				}*/
				HttpSession session=request.getSession(true);
				session.setAttribute("usuario", usuariodb);
				session.setAttribute("rol","1");
				//pagina ="template.jsp";
				pagina ="pp_registrarPP.jsp";
				//request.setAttribute("pagina","practicas_preprofesionales/pp_registrarPracticas");
				//request.setAttribute("titulo","Registrar Practicas Pre-profesionales");
			}else{
				String mensaje="Clave Incorrecta";
				request.setAttribute("mensaje", mensaje);
				pagina="jsp/logeo.jsp";
			}
		//}
		request.getRequestDispatcher(pagina).
		forward(request, response);
		
	}
	
	/*protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
		PrintWriter out = response.getWriter();
		try {
			 String apellido = request.getParameter("txt_buscarAp");
			 String codigo = request.getParameter("txt_buscar");
			
			if(codigo!=null){
			DaoFactory dao = DaoFactory.getDAOFactory(DaoFactory.MYSQL);
			Buscar_Alumno var2 = dao.getBuscar_Alumno();
			AlumnoBean bean = var2.buscarAlumno(codigo);
				
			if(bean == null){
				request.setAttribute("mensaje", "Datos incorrectos");
				getServletContext().getRequestDispatcher("/buscar_alumno.jsp")
													.forward(request, response);
			}else{
				
				request.setAttribute("bean", bean);
							
				getServletContext().getRequestDispatcher("/buscar_alumno1.jsp")
					.forward(request, response);
				
			}
			}else if(apellido!=null)	{
				DaoFactory dao = DaoFactory.getDAOFactory(DaoFactory.MYSQL);
				Buscar_Alumno var2 = dao.getBuscar_Alumno();
				Vector<AlumnoBean> bean = var2.buscarAlumnoAp(apellido);
				
				if(request.getParameter("txt_buscarAp") == ""){
					request.setAttribute("mensaje", "Datos incorrectos");
					getServletContext().getRequestDispatcher("/buscar_alumno.jsp")
														.forward(request, response);
				}else{
					
					request.setAttribute("bean", bean);
								
					getServletContext().getRequestDispatcher("/buscar_alumno2.jsp")
						.forward(request, response);
					
				}
			}else {
				request.setAttribute("mensaje", "Datos incorrectos");
				getServletContext().getRequestDispatcher("/buscar_alumno.jsp")
													.forward(request, response);
			}
						
		} catch (Exception e) {
			// TODO: handle exception
			out.print(e.getMessage());
		}
	}

	/**
	 * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
	 */ /*
	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
	} 
	*/
	
	/*
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
		PrintWriter out = response.getWriter();
		try {
			 String codigo = request.getParameter("codigo1");
			
			DaoFactory dao = DaoFactory.getDAOFactory(DaoFactory.MYSQL);
			DocenteDao var2 = dao.getDocenteDao();
			DocenteBean bean = var2.seleccionarDocente(Integer.parseInt(codigo));
			
			request.setAttribute("bean", bean);
			
			getServletContext().getRequestDispatcher("/editar_docente.jsp").forward(request, response);
			
		} catch (Exception e) {
			// TODO: handle exception
			out.print(e.getMessage());
		}
	}

	/**
	 * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
	 */
/*	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
		PrintWriter out = response.getWriter();
		try {
			DocenteBean bean = new DocenteBean();
			bean.setIdDocente( Integer.parseInt(request.getParameter("txt_idDocente")) );
			bean.setNombredoc( request.getParameter("txt_nombre") );
			bean.setApellidoPaternoDoc( request.getParameter("txt_apellidoP") );
			bean.setApellidoMaternoDoc( request.getParameter("txt_apellidoM") );
			bean.setTelefonoDoc( Integer.parseInt(request.getParameter("txt_telefono")) );
			bean.setCelularDoc( Integer.parseInt(request.getParameter("txt_celular")) );
			bean.setEmailDoc( request.getParameter("txt_email") );
			bean.setUsuario( request.getParameter("txt_usuario") );
			bean.setPassword( request.getParameter("txt_password") );
			
			DaoFactory dao = DaoFactory.getDAOFactory(DaoFactory.MYSQL);
			DocenteDao var2 = dao.getDocenteDao();
			boolean flag = var2.editarDocente(bean);
			
			if(flag){
				request.setAttribute("mensaje_adm", "Docente Actualizado");
			}else{
				request.setAttribute("mensaje_adm", "OCurrio un error");
			}
			
			getServletContext().getRequestDispatcher("/mensaje_adm.jsp").forward(request, response);
		
		} catch (Exception e) {
			// TODO: handle exception
			out.print(e.getMessage());
		}
	}*/

}
